//package com.culturalCenter.dataCenter.globalconfig;
//
//
//import org.apache.spark.SparkConf;
//import org.apache.spark.api.java.JavaSparkContext;
//import org.apache.spark.sql.SparkSession;
//import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
//import org.springframework.boot.context.properties.ConfigurationProperties;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import scala.Serializable;
//
//@Configuration
//@ConfigurationProperties(prefix = "spark")
//public class SparkContextBean implements Serializable {
//
//    /**
//     * spark的安装地址
//     */
//    private String sparkHome = "";
//    //应用的名称
//    private String appName = "";
//    /**
//     * master的地址
//     */
//    private String master = "";
//    /**
//     * 指定driver 的hosts-name
//     */
//    private String driverHostName = "";
//    /**
//     * 指定driver的服务端口
//     */
//    private String driverHostPort = "";
//
//    /**
//     * 内存大小
//     */
//    private String memory = "";
//    /**
//     * CPU核心数
//     */
//    private String cores = "";
//
//    @Bean
//    @ConditionalOnMissingBean(SparkConf.class)
//    public SparkConf sparkConf() throws Exception {
//        SparkConf conf = new SparkConf()
//                .setSparkHome(sparkHome)
//                .setAppName(appName)
//                //指定driver 的hosts-name
//                .set("spark.driver.host", driverHostName)
//                //指定driver的服务端口
//                .set("spark.driver.port", driverHostPort)
//                //内存大小
//                .set("spark.executor.memory", memory)
//                //CPU核心数
//                .set("spark.driver.cores", cores)
//                .set("spark.driver.blockManager.port","9093")
//                .setJars(new String[]{"target/dataCenter-0.0.1-SNAPSHOT.jar"})
//                .setMaster(master);
//        conf.set("spark.serializer", "org.apache.spark.serializer.KryoSerializer");
//        return conf;
//
//    }
//
////    @Bean
////    @ConditionalOnMissingBean(SparkSession.class)
////    public SparkSession SparkSession() throws Exception {
////        SparkSession spark = SparkSession.builder().master(master).appName(appName)
////                //指定driver 的hosts-name
////                .config("spark.driver.host", driverHostName)
////                //指定driver的服务端口
////                .config("spark.driver.port", driverHostPort)
////                //内存大小
////                .config("spark.executor.memory", memory)
////                //CPU核心数
////                .config("spark.driver.cores", cores)
////                .getOrCreate();
////        return spark;
////    }
//
//    @Bean
//    @ConditionalOnMissingBean(JavaSparkContext.class)
//    public JavaSparkContext javaSparkContext() throws Exception {
//        return new JavaSparkContext(sparkConf());
//    }
//
//    public String getSparkHome() {
//        return sparkHome;
//    }
//
//    public void setSparkHome(String sparkHome) {
//        this.sparkHome = sparkHome;
//    }
//
//    public String getAppName() {
//        return appName;
//    }
//
//    public void setAppName(String appName) {
//        this.appName = appName;
//    }
//
//    public String getMaster() {
//        return master;
//    }
//
//    public void setMaster(String master) {
//        this.master = master;
//    }
//
//    public String getDriverHostName() {
//        return driverHostName;
//    }
//
//    public void setDriverHostName(String driverHostName) {
//        this.driverHostName = driverHostName;
//    }
//
//    public String getDriverHostPort() {
//        return driverHostPort;
//    }
//
//    public void setDriverHostPort(String driverHostPort) {
//        this.driverHostPort = driverHostPort;
//    }
//
//    public String getMemory() {
//        return memory;
//    }
//
//    public void setMemory(String memory) {
//        this.memory = memory;
//    }
//
//    public String getCores() {
//        return cores;
//    }
//
//    public void setCores(String cores) {
//        this.cores = cores;
//    }
//}